Pular para o conteúdo

[C] Raiz quadrada

Script diz a raiz quadrada aproximada
do numero digitado. Raiz quadrada e
extraida por tentativas. (Função,
loops, tomadas de decisões)
Enzo de Brito Ferber EnzoFerber
Hits: 13.686 Categoria: C/C++ Subcategoria: Miscelânea
  • Download
  • Nova versão
  • Indicar
  • Denunciar

Descrição

Script diz a raiz quadrada aproximada
do numero digitado. Raiz quadrada e
extraida por tentativas. (Função,
loops, tomadas de decisões)
Download sqrt.c Enviar nova versão

Esconder código-fonte

#include <stdio.h>
#include <stdlib.h>


int sqrtt(int num){
   int i;
   int sqr;
   for(i = 0;;i++){
      printf("%d * %d = %d\n", i,i,(i*i));
      if(i*i == num){
         sqr = i;
         break;
      }
      if(i*i < num)
         continue;
      if(i*i > num){
         sqr = i-1;
         break;
      }
   }
   return sqr;
}

int main(){
   int i;
   int sq;
   char tec;
   do{
      system("clear");
      printf("Digite o numero a se retirar a raiz: ");
      scanf("%d", &sq);
      i = sqrtt(sq);
      printf("Raiz Quadrada: %d", i);
                __fpurge(stdin);
                tec = getchar();
   }while(1);
}

Exibe quantos números perfeitos foram digitados

Fatorizando um número

Milesegundos em C

Programa para demonstrar operadores

Agenda Eletrônica

#1 Comentário enviado por hgalvao em 11/02/2016 - 20:54h
void sqrt(float n)
{
int count = 0;
float r, sq;
r = sq = 1;
while((sq - n > 0.0001) || (sq - n < -0.0001))
{
r = (sq+n)/(2*r);
sq = r*r;
count++;
}
return r;
}
#2 Comentário enviado por EnzoFerber em 16/02/2016 - 17:47h

[1] Comentário enviado por hgalvao em 11/02/2016 - 20:54h

void sqrt(float n)
{
int count = 0;
float r, sq;
r = sq = 1;
while((sq - n > 0.0001) || (sq - n < -0.0001))
{
r = (sq+n)/(2*r);
sq = r*r;
count++;
}
return r;
}


Método de Newton, muito bom.
Precisa apenas mudar o tipo de retorno da função para float.

Contribuir com comentário

Entre na sua conta para comentar.